table of contents
        
      
      
    | XkbAllocNames(3) | XKB FUNCTIONS | XkbAllocNames(3) | 
NAME¶
XkbAllocNames - Allocate symbolic names structures
SYNOPSIS¶
Status XkbAllocNames (XkbDescPtr xkb, unsigned int which, int num_rg, int num_key_aliases);
ARGUMENTS¶
- - xkb
 - keyboard description for which names are to be allocated
 - - which
 - mask of names to be allocated
 - - num_rg
 - total number of radio group names needed
 - - num_key_aliases
 - total number of key aliases needed
 
DESCRIPTION¶
Most applications do not need to directly allocate symbolic names structures. Do not allocate a names structure directly using malloc or Xmalloc if your application changes the number of key aliases or radio groups or constructs a symbolic names structure without loading the necessary components from the X server. Instead use XkbAllocNames.
XkbAllocNames can return BadAlloc, BadMatch, and BadValue errors. The which parameter is the bitwise inclusive OR of the valid names mask bits defined in Table 1.
| Table 1 Symbolic Names Masks | |||
| Mask Bit | Value | Keyboard | Field | 
| Component | |||
| XkbKeycodesNameMask | (1<<0) | Xkb->names | keycodes | 
| XkbGeometryNameMask | (1<<1) | Xkb->names | geometry | 
| XkbSymbolsNameMask | (1<<2) | Xkb->names | symbols | 
| XkbPhysSymbolsNameMask | (1<<3) | Xkb->names | phys_symbols | 
| XkbTypesNameMask | (1<<4) | Xkb->names | type | 
| XkbCompatNameMask | (1<<5) | Xkb->names | compat | 
| XkbKeyTypeNamesMask | (1<<6) | Xkb->map | type[*].name | 
| XkbKTLevelNamesMask | (1<<7) | Xkb->map | type[*].lvl_names[*] | 
| XkbIndicatorNamesMask | (1<<8) | Xkb->names | indicators[*] | 
| XkbKeyNamesMask | (1<<9) | Xkb->names | keys[*], num_keys | 
| XkbKeyAliasesMask | (1<<10) | Xkb->names | key_aliases[*], num_key_aliases | 
| XkbVirtualModNamesMask | (1<<11) | Xkb->names | vmods[*] | 
| XkbGroupNamesMask | (1<<12) | Xkb->names | groups[*] | 
| XkbRGNamesMask | (1<<13) | Xkb->names | radio_groups[*], num_rg | 
| XkbComponentNamesMask | (0x3f) | Xkb->names | keycodes, | 
| geometry, | |||
| symbols, | |||
| physical symbols, | |||
| types, and | |||
| compatibility map | |||
| XkbAllNamesMask | (0x3fff) | Xkb->names | all name components | 
Do not free symbolic names structures directly using free or XFree. Use XkbFreeNames instead.
DIAGNOSTICS¶
SEE ALSO¶
| libX11 1.6.4 | X Version 11 |